Repository navigation
Keep quiet relay pairs up with pings on both sides - #62
Merged
Merged
Conversation
Through Cloudflare, a member and a host with nothing to say were cut after about 100 seconds, so a member watching a quiet terminal was dropped; only the host's own link had pings. The relay now pings both sides of each pair every 30 seconds (RelayLimits.Ping), each side apart, and ends a pair whose side doesn't answer. Pings carry nothing of the visit, so its records stay sealed end to end. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Through Cloudflare, a member/host pair with no traffic was cut after about 125 s (Cloudflare's idle limit); only the host's own relay link had pings. A member watching a quiet terminal was dropped.
RelayLimits.Ping), each leg on its own, and ends a pair whose leg doesn't answer. Chosen over encrypted no-op records from the endpoints: no protocol or client change, and pings carry nothing of the visit, so E2E is untouched.TestRelayQuietPairStaysUpputs a proxy that cuts connections idle for 500 ms in front of both the host and the member, keeps a pair quiet for 2 s, and echoes through it (fails without the fix).🤖 Generated with Claude Code